The present invention relates generally to computer data storage systems and, more particularly, relates to acceleration of computer data storage utilizing fibrechannel switches, disk drive aggregators, and arrays of disk drives.
Computer systems are pervasive in our society and virtually all human activity is now influenced at least to some extent by existence and usage of these systems. The faster and more efficient these systems are, the better for all concerned. Certain computer systems developing within the technological area known as fibrechannel or fibrechannel networks do offer faster and more efficient operation, not only because of their optically-communicative capability but for other reasons as well. One of the configurations in fibrechannel networks employs multiple disk drive arrays for data storage managed by an aggregator (essentially another array but with much higher intelligence than ordinary arrays and which organizes ordinary arrays into xe2x80x9caggregationsxe2x80x9d) in combination with a fibrechannel switch (another intelligent device which performs a complex switching function under control of at least the aggregator). Typical inter-relationships of computer, aggregator, switch, and storage within fibrechannel networking have been established.
Referring to FIG. 1, there is depicted one typical fibrechannel computer system arrangement. Computer hosts 101, 102, and 103 communicate through fibrechannel switch or hub 104, sometimes known as a xe2x80x9cfabricxe2x80x9d. The term xe2x80x9cfabricxe2x80x9d suggests densely-packed multiple conductors, since internal fibrechannel switch connections can be very dense. The irregularly-shaped xe2x80x9ccloudxe2x80x9d symbol representing the switch implies an active or changeable entity which is capable of being used or controlled. Front end fabric 104 connects to aggregator 105 (typically a RAID system, standing for Redundant Array of Independent/Inexpensive Disks) which, in turn, connects to back end fabric 106 (another fibrechannel switch or hub) to which are connected multiple disk drives 107, 108, 109, and 110. A major goal of this system is efficient movement of data or computer information from hosts to disk drive storage and vice-versa. If all computers communicate directly with all disk drives (and there can be many more than three hosts and four drives, those numbers being represented here only for purposes of clarity of illustration) then highly complex and inefficient operation with multiple hosts competing for the same storage space on the same disk drives, etc. can result. Thus, an aggregator is used to allow communication by computers with drives, but only through the aggregator to improve operation. The aggregator is a highly intelligent and complex device which appears to computers such as hosts 101, 102, and 103 to be a number of disk drives. The aggregator further appears to the computers to be the only disk drives in the system since it xe2x80x9chidesxe2x80x9d disk drives 107-110 connected to the back end fabric. This reduces complexity for computer hosts to a great extent. Further, this introduces a degree of security since all commands relative to data stored on disk drives from hosts must pass through, and thus be xe2x80x9capprovedxe2x80x9d by, the aggregator. Any illegitimate command or operation may be stopped by the aggregator before it does damage. But, unfortunately, the aggregator can become a bottleneck in this configuration between computers and disk drives under certain high-traffic or busy or other conditions. Thus, the aggregating device can introduce xe2x80x9clatencyxe2x80x9d or time delay into system operation and contribute to the very inefficiencies in system operation that it was designed to reduce or eliminate. Under certain circumstances, this can be a serious problem.
However, if the back end drives were directly accessible via the front end fabric, the aggregation xe2x80x9cbottleneckxe2x80x9d would be removed and certain reductions in these latencies might be achieved. In FIG. 2, Host computers 201, 202, and 203 are shown connected to front end fabricxe2x80x94fibrechannel switch 204 to which are also connected aggregator 208 and disk drives 205, 206, and 207. It is to be understood that the number of hosts and drives are not limited to the specific number shown and that many more, or fewer, hosts and drives are intended to be represented by this diagram. In operation, any one or more of the hosts first sends data requests to the aggregator which then enables the disk drives and alerts them that these requests are coming directly to any one or more of them. Then hosts send multiple requests addressed to the disk drives through the switch directly to these different drives, accessing these drives in parallel and receiving directly back is multiple data streams in parallel through the switch, which reduces the latency factor by eliminating at least one xe2x80x9chopxe2x80x9dthrough the aggregator. However this configuration reintroduces the security issue, because these drives, not being xe2x80x9cprotectedxe2x80x9d by the aggregator, are more exposed to illegitimate commands in this configuration. Thus, disk drives and computers in this configuration have to contain added intelligence to deal with these security issues and the task of adding this intelligence creates a more complicated and less desirable environment.
Referring next to the subject of fibrechannel protocols as further useful background information, a book entitled xe2x80x9cFibre Channel Volume 1 The Basicsxe2x80x9d by Gary R. Stephens and Jan V. Dedek, published by Ancot Corp, Menlo Park, Calif., first edition June, 1995, is incorporated by reference herein. Within the computer industry there are highly competitive companies which specialize in design, development and manufacture of these switches, aggregators, memory arrays, and other fibrechannel related components. If their respective designs are to be employed in the same system, or if multiple systems employing their various designs are networked together, these designs have to mesh together properly for users to derive any benefit from them. This is accomplished by having these companies agree to certain standards sometimes generically known as the xe2x80x9cANSI Fibre Channel Standardxe2x80x9d. These standards are complex and are negotiated into existence by the very companies that are responsible for creating these fibrechannel-related components. One of the agreedupon products of these negotiations is what is sometimes called the xe2x80x9cprotocol stackxe2x80x9dxe2x80x94five network levels of fibrechannel. (In computer networks, information or data sent between network devices is conducted on a physical level normally by electrons or photons over copper wires or fibre-optic paths respectively, and/or by telecommunication paths, and, at the same time, is also virtually conducted on multiple other network levels above the physical level.) Referring to FIG. 3A, five levels: FC-0, FC-1, FC-2, FC-3 and FC-4 are shown, corresponding to: physical, encode/decode (8B/10B), Framing Protocol, Common Services for Ports, and Mapping respectively. {Sometimes, another sixth layer, Upper Layer Protocol, is referred to, and is shown.} Briefly, the FC-0 functional level relates to physical connection of nodes, either optical or electricalxe2x80x94the nuts and bolts of connection. The FC-1 functional level relates to how information is transmitted between fibrechannel input/output ports, i.e. how lasers and electrical drivers/receivers deal with a bit stream moving into and out from a fiber. The FC-2 functional level deals with transferring information and is concerned with its content, proper arrival of content or detection of missing information or information errors; this level thus defines frame fields including frame header field layout and is utilized in embodiments of the present invention. The FC-3 functional level deals with common services that can be shared among ports. And, the FC-4 functional level handles mapping of existing non-fibrechannel interfaces for use on fibrechannel by using fibrechannel tools.
The foregoing latency problem of the prior art is addressed and relieved, without reducing security, by the welcome arrival of the present invention which operates not only within parameters of the ANSI Fibre Channel Standard, but, as suggested, makes novel use of fibrechannel level FC-2, as described hereinbelow.
The present invention in a broad aspect relates to a network-attached storage computer system having disk drives and an aggregator attached to the network. Direct or indirect data transfer between computer and disk drives is determined by its impact on overall performance of the system. If determined that indirect transfer would increase overall system performance compared to direct transfer, data is sent between computer and disk drives through the network and through the aggregator. If determined that direct transfer would increase overall system performance compared to indirect transfer, data is sent between computer and disk drives through the network but not through the aggregator.
The present invention in another aspect relates to a computer data storage system wherein data is grouped in frames. There are disk drives or the like for storing and retrieving data and an aggregator or data storage manager for managing operation of the disk drives. Each of the frames includes a frame header which designates parameters associated with data in its frame. One of the parameters is destination ID (identity of the destination). There is a controllable switch connected between computer, disk drives, and aggregator for selecting certain frames and flowing data in those selected frames directly between computer and disk drives. The aggregator is destination ID in the selected frames, but transfer of data in the selected frames between computer and disk drives is direct and not through the aggregator. Thus, latency issues can be reduced or eliminated because of direct flow of data between computer and disk drives, while at the same time not reducing security since the destination ID for data in the selected frames remains the aggregator.
In a further feature of the present invention, the switch includes switch control logic under command of the aggregator to select those frames to be transferred directly. The switch control logic includes a frame header field selector such as a frame header mask, an input frame header buffer, and a map table.
In yet another aspect, the present invention is incorporated in a computer system including both disk drives or the like for storing and retrieving data grouped in frames and an aggregator normally in the path of the frames flowing between computer and disk drives. The present invention employs computer logic and relates to enhancing transfer of data between computer and disk drives. This involves establishing a frame header field selector such as a mask containing only relevant information. The frames including their respective headers are received from the computer, and headers and mask are compared to obtain xe2x80x9cdistilledxe2x80x9d frame headers. A map table is established which contains sets of frame header fields corresponding to input addresses (proxy destination IDs) of the disk drives. The map table is searched to find matches between distilled frame headers and sets of frame header fields. For each match, a proxy destination ID is substituted in place of the original destination ID in headers of each of the corresponding frames which are then forwarded directly to the disk drives and not via the aggregator. This data transfer enhancement operation is not perceptible by the host computer.
And in yet another aspect, the present invention relates to a computer program product for use in a computer system employing network-attached storage having both disk drives and a disk drive aggregator attached to the network. There is included a computer usable medium having computer readable program code thereon for enhancing the transfer of data between the computer and the disk drives.
It is thus advantageous to use the present invention to reduce latency issues without negatively impacting data security in a network-attached-storage-based computer system.
It is a general object of the present invention to provide increased overall system performance in a computer system.
If is a further object of the present invention to provide improved performance in storage and retrieval of data in a computer system, including a network-attached-storage computer system.
It is an additional object of the present invention to provide apparatus and methodology for allowing direct data flow between a computer system""s host computers and disk drives under certain conditions while maintaining data security.
It is a still further object of the present invention to provide an improved fibrechannel-based computer system employing multiple disk drives wherein latency normally introduced by bottleneck-operation of an aggregator is reduced or eliminated.
Other objects and advantages will be understood after referring to the detailed description of the preferred embodiments and to the appended drawings wherein: